package com.yhhvip.lottery.service;

import com.github.pagehelper.PageInfo;
import com.yhhvip.lottery.dao.mybatis.model.LotSysRole;
import com.yhhvip.lottery.domain.PageEntity;
import com.yhhvip.lottery.domain.ReqLotSysRole;
import com.yhhvip.lottery.domain.res.ResLotSysRole;

import java.util.List;

public interface RoleService {

    /**
     * @param userId 用户Id
     * @author XOu
     * @description 根据用户Id获取角色列表
     * @version 1.0
     * @date 2018/6/25
     * @modified
     */
    List<ResLotSysRole> queryRoleListWithSelected(Long userId);

    /**
     * @param pageEntity 分页参数
     * @author XOu
     * @description 分页查询所有角色
     * @version 1.0
     * @date 2018/6/25
     * @modified
     */
    PageInfo<ResLotSysRole> selectByPage(PageEntity pageEntity);

    /**
     * @param roleId 角色Id
     * @author XOu
     * @description 删除角色 同时删除角色资源表中的数据
     * @version 1.0
     * @date 2018/6/25
     * @modified
     */
    void delRole(Long roleId);

    /**
     * @param reqLotSysRole 传参实体
     * @author XOu
     * @description 添加角色
     * @version 1.0
     * @date 2018/6/25
     * @modified
     */
    Long save(ReqLotSysRole reqLotSysRole);
}
